home *** CD-ROM | disk | FTP | other *** search
/ Freelog 117 / FreelogNo117-OctobreNovembre2013.iso / Programmation / jedit / jedit5.1.0install.exe / {app} / macros / Emacs / Emacs_Capitalize_Word.bsh < prev    next >
Text File  |  2013-07-28  |  1KB  |  38 lines

  1. /**
  2.  * Convert the portion of the current word to title case, starting at the
  3.  * caret and moving to the end of the word. Emulates the Emacs "capitalize-word"
  4.  * function.
  5.  */
  6.  
  7. source (MiscUtilities.constructPath(dirname(scriptPath), "EmacsUtil.bsh"));
  8.  
  9. void emacsCapitalizeWord()
  10. {
  11.     caret = eatNonAlphanums();
  12.  
  13.     // Adjust to beginning of the word (skipping any non-word chars)
  14.  
  15.     textArea.goToNextWord (false);
  16.     endOfWord = textArea.getCaretPosition();
  17.  
  18.     textArea.setCaretPosition (caret);
  19.     selection = new Selection.Range (caret, endOfWord);
  20.  
  21.     word = textArea.getText (caret, endOfWord - caret);
  22.     if (word.length() > 0)
  23.     {
  24.         ch = word.toCharArray();
  25.         ch[0] = Character.toUpperCase (ch[0]);
  26.         
  27.         for (i = 1; i < ch.length; i++)
  28.             ch[i] = Character.toLowerCase (ch[i]);
  29.         
  30.         textArea.setSelection (selection);
  31.         textArea.setSelectedText (new String (ch));
  32.         textArea.removeFromSelection (selection);
  33.     }
  34. }
  35.  
  36. emacsCapitalizeWord();
  37.  
  38.